.hover-pointer {
  &:hover {
    cursor: pointer;
  }
}

.full-width {
  width: 100%;
}

.text-red {
  color: @warningColor;
}

.text-tip {
  color: @tipColor;
}

.text-white {
  color: @white;
}
.text-primary {
  color: @primaryColor;
}

.text-gray1 {
  color: @secondaryColor;
}

.text-gray2 {
  color: @lighterColor;
}

.text-gray {
  color: @disabledColor;
}

.text-success {
  color: @successColor;
}

.text-center {
  text-align: center;
}
.text-yellow {
  color: #FFA631;
}
.break-all {
  word-break: break-all;
}

.border {
  border: 1px solid @dividerColor;
}
.no-border {
  border-width: 0 !important;
}

.border-bottom {
  border-bottom: 1px solid @dividerColor;
}

.border-top {
  border-top: 1px solid @dividerColor;
} 
.border-left{
  border-left: 1px solid @dividerColor;
}
.border-right-base {
  border-right: 1px solid @border-color-base;
}

.border-radius {
  border-radius: @border-radius-base;
}

.relative {
  position: relative;
}

.absolute {
  position: absolute;
}

.space-between {
  display: flex;
  justify-content: space-between;
}

.flex {
  display: flex;
}

.justify-center {
  justify-content: center;
}

.align-center {
  align-items: center;
}

.flex-right {
  display: flex;
  justify-content: flex-end;
}

.align-baseline {
  align-items: baseline;
}

.start-color {
  color: @controlStartColor;
}

.close-color {
  color: @controlEndColor;
}

.inline-block {
  display: inline-block;
}

.for(@width) when (@width<=60) {
  .for(@width + 1);

  .ft-size@{width} {
    font-size: @width * 1px !important;
  }

  .top-@{width} {
    top: @width * 1px;
  }

  .bottom-@{width} {
    bottom: @width * 1px;
  }

  .left-@{width} {
    left: @width * 1px;
  }

  .right-@{width} {
    right: @width * 1px;
  }

  .h-@{width} {
    height: @width * 1px;
  }

  .mh-@{width} {
    min-height: @width * 1px;
  }

  .m-@{width} {
    margin: @width * 1px;
  }

  .mx-@{width} {
    margin-right: @width * 1px;
    margin-left: @width * 1px;
  }

  .my-@{width} {
    margin-bottom: @width * 1px;
    margin-top: @width * 1px;
  }

  .ml-@{width} {
    margin-left: @width * 1px;
  }

  .mr-@{width} {
    margin-right: @width * 1px;
  }

  .mt-@{width} {
    margin-top: @width * 1px;
  }

  .mb-@{width} {
    margin-bottom: @width * 1px;
  }

  .p-@{width} {
    padding: @width * 1px;
  }

  .px-@{width} {
    padding-right: @width * 1px;
    padding-left: @width * 1px;
  }

  .py-@{width} {
    padding-top: @width * 1px;
    padding-bottom: @width * 1px;
  }

  .pl-@{width} {
    padding-left: @width * 1px;
  }

  .pr-@{width} {
    padding-right: @width * 1px;
  }

  .pt-@{width} {
    padding-top: @width * 1px;
  }

  .pb-@{width} {
    padding-bottom: @width * 1px;
  }

  .line-height-@{width} {
    line-height: @width * 1px;
  }

  .w-@{width} {
    width: @width * 1px;
  }
}

.for(0);

.m0 {
  margin: 0px !important;
}

.mb-0 {
  margin-bottom: 0px !important;
}

.mt-0 {
  margin-top: 0px !important;
}
.p0 {
  padding: 0px !important;
}
.code-link {
  color: @primaryColor;
  .hover-pointer
}

.bg-white {
  background: @white;
}

.common-layout-header {
  background-color: @headerBg;
  color: @headerColor;
  height: 70px;
  padding: 0 20px 0 30px;

  &.is-collapse {
    padding: 0 20px 0 12px;
  }

  .base-header-container {
    width: 100%;
    height: inherit;
    display: flex;
    justify-content: space-between;
    align-items: center;
    line-height: 0;

    // font-size: 16px;
    div {
      &:first-child {
        display: flex;
        align-items: center;

        img {
          &.small-logo {
            width: 55px;
            height: 30px;
            margin-right: 30px;
          }

          &.normal-logo {
            width: 156px;
            height: 39px;
            margin-right: 64px;
          }
        }

        .current-line-container { 
          flex: none;
          width: 100px;
          display: flex;
          align-items: center;
          .anticon {
            font-size: 12px;
          }
        }

        .line-info { 
          display: inline-block;
          max-width: 85px;
          white-space: nowrap;
          overflow: hidden;
          text-overflow: ellipsis;
        } 
        .refresh {
          .ft-size20;
          margin: 0 30px 0 25px;
          .hover-pointer;
        }

        .operate-container {
          width: 215px;
          height: 32px; 
          padding-left: 10px;
          border-radius: @border-radius-base;
          border: 1px solid rgba(255, 255, 255, 0.4);
          background: rgba(255, 255, 255, 0.2);
          margin-right: 22px;
          user-select: none;
          .hover-pointer;
          display: flex;
          align-items: center;
          color: @white;
          .ant-switch-checked { 
            background: #4FDC8A;
          }
        }
        .operate-container-more {
          flex: none;
          width: 48px;
          height: 28px;
          line-height: 28px;
          border-left: 1px solid rgba(255,255,255,0.4);
          text-align: center; 
          user-select: none;
          .hover-pointer;
        }

        .ant-divider-vertical {
          border-left-color: @white;
          margin: 0 15px 0 8px;
        }
      }

      &:last-child {
        display: flex;
        justify-content: space-between;
        align-items: center;

        .ant-avatar {
          margin: 0 25px;
        }

        .lock-icon {
          margin-right: 25px;
          .ft-size20;
          .hover-pointer; 
          position: relative;
        }
        .bookmarks-container {
          .colle-img {
            width: 24px;
            height: 24px;
            .hover-pointer;
          }
        }
        .bell-icon {
          color: @headerColor;
          font-size: 24px; 
        }

        .tvScreen {
          .hover-pointer;
          position: relative;
          width: 32px;
          height: 32px;
          margin-left: 25px;
          display: inline-block;
          background-size: 32px 32px;
          line-height: 32px;
          background-image: @tvScreenImg;
          background-repeat:no-repeat;
        }
        .current-user-container {
          display: flex;
          align-items: center;

          &.ant-dropdown-open {
            .down-arrow {
              transform: rotate(180deg);
            }
          }
        }

        .user-name {
          display: block;
          max-width: 100px;
          height: 26px;
          line-height: 26px;
          white-space: nowrap;
          overflow: hidden;
          text-overflow: ellipsis;
        }
      }
    }
    .ant-menu-item .ant-menu-item-icon + span {
      margin-left: 5px!important;
    }
  }


  .header-menu {
    border-bottom: none !important;
    background: @transparent !important;
    color: @headerColor !important;
    font-size: 16px;
    
  }

  .ant-menu-horizontal:not(.ant-menu-dark)>.ant-menu-submenu:hover::after {
    border-bottom: none !important;
  }

  .ant-menu-horizontal>.ant-menu-submenu::after {
    content: none !important;
  }

  .ant-menu-item { 
    &:after {
      content: none !important;
    }
  }

  .ant-menu-horizontal:not(.ant-menu-dark) { 
    .ant-menu-submenu:hover {
      color: @white;
    }

    .ant-menu-submenu-selected {
      color: @white;

      &:after {
        border: none !important;
      }
    }

    .ant-menu-submenu-title {
      display: flex;
      align-items: center;

      &:after {
        content: none !important;
      }

      &:active {
        background: transparent !important;
      }

      &:hover {
        color: @white !important;

        &:after {
          border: none !important;
        }
      }

      &:focus-visible {
        box-shadow: none;
      }
    }

    .ant-menu-submenu-open {
      color: @white !important;

      .down-arrow {
        transform: rotate(180deg);
      }
    }

    .ant-menu-submenu {
      line-height: 40px; 
      padding: 0 15px !important; 
    }

    .ant-menu-item {
      height: 40px;
      padding: 0 15px !important; 
      display: flex;
      align-items: center;
    }

    .ant-menu-item:hover {
      color: @white !important;
      border: none !important;

      &:after {
        border: none !important;
      }

      &:active {
        background: transparent !important;
      }
    }

    .ant-menu-item-selected {
      color: @white !important;

      &:after {
        border: none !important;
      }
    }
  }
}

.scroll-bar-style {
  &::-webkit-scrollbar {
    width: 2px;
    height: 100%;
    background-color: transparent;
  }

  &::-webkit-scrollbar-track {
    background-color: #f0f0f0;
  }

  &::-webkit-scrollbar-thumb {
    background-color: #eee;
    box-shadow: inset 0 0 6px rgba(0, 0, 0, 0.3);

    &:hover {
      background-color: #bbb;
    }

    &:active {
      background-color: #888;
    }
  }
}

.header-line-menu {
  max-height: 300px !important;
  overflow-y: scroll;
  .scroll-bar-style;
}

.common-layout-sider {
  height: calc(100vh - 70px);
  overflow-y: auto;
  overflow-x: hidden;
  .scroll-bar-style;

  .first-menu-name {
    color: @white;
    margin: 0 10px;
    padding: 14px 14px 0;
    font-size: 16px;
    border-bottom: 1px solid #000;

    >div {
      height: 48px;
      line-height: 48px;
    }
  }

  .contact_us {
    position: absolute;
    bottom: 10px;
    width: 100%;
    text-align: center;
    color: #FFFFFF;
    opacity: 1;
    transition: opacity 0.3s cubic-bezier(0.645, 0.045, 0.355, 1), margin 0.3s, color 0.3s;
  }

  // back
  .side-menu {
    height: calc(100vh - 230px);
    overflow-y: auto;
    overflow-x: hidden;

    background: @transparent !important;
    color: @white;
    border-right: none !important;

    .ant-menu-submenu-arrow {
      color: @white;
    }

    .ant-menu-title-content {
      line-height: 17px;
      margin-left: 10px !important;
    }

    .ant-menu-title-content-span{
      display: inline-block;
      width: 150px;
      overflow: hidden;
      text-overflow: ellipsis;
      white-space: nowrap;
    }
    .ant-menu-title-content-child-span{
      display: inline-block;
      width: 140px;
      overflow: hidden;
      text-overflow: ellipsis;
      white-space: nowrap;
    }
    .ant-menu-item-icon {
      position: relative;
      top: -1px;
    }

    .menu-item-active {
      background: @sideSelectedBg;

      &:after {
        opacity: 0 !important;
        transition: none !important;
      }

      &:before {
        content: '';
        position: absolute;
        left: 0;
        ;
        border-left: 3px solid @brandColor;
        height: inherit;
      }
    }

    .ant-menu-submenu-open {
      .ant-menu-submenu-arrow {
        color: @white;
      }
    }

    .ant-menu-item {
      color: @white;
      width: 100%;

      &:hover {
        .ant-menu-submenu-active {
          color: @sideHoverColor;

          .ant-menu-submenu-arrow {
            color: @sideHoverColor;
          }
        }

        .menu-item-active;
      }

      &.ant-menu-item-selected {
        .menu-item-active;
        color: @white;

        .ant-menu-submenu-arrow {
          color: @sideHoverColor;
        }

        &:hover {
          .ant-menu-submenu-active {
            color: @sideHoverColor;

            .ant-menu-submenu-arrow {
              color: @sideHoverColor;
            }
          }
        }
      }

    }

    .ant-menu-submenu-title {
      &:hover {
        color: @sideHoverColor;

        .ant-menu-submenu-arrow {
          color: @sideHoverColor;
        }
      }
    }

    .ant-menu-submenu-selected {
      .ant-menu-submenu-title {
        color: @sideHoverColor;

        &:hover {
          color: @sideHoverColor;

          .ant-menu-submenu-arrow {
            color: @sideHoverColor;
          }
        }

        .ant-menu-submenu-arrow {
          color: @sideHoverColor;
        }
      }

      &.ant-menu-submenu-active {
        .ant-menu-submenu-title {
          color: @sideHoverColor;
        }
      }
    }

    .ant-menu-sub.ant-menu-inline {
      background: @transparent !important;

    }

    .ant-menu-submenu-active {
      color: @sideHoverColor !important;

      .ant-menu-submenu-arrow {
        color: @sideHoverColor;
      }
    }
  }
}

.common-layout-content {
  .ant-tabs>.ant-tabs-nav {
    background-color: @white;
    margin-bottom: 0 !important;
  }

  .card-out-container {
    margin: 20px;
    padding: 20px !important;
    height: calc(100vh - 150px);
    overflow-y: auto;
    .scroll-bar-style;
    background: @white;
    border-radius: @border-radius-base;
  }

  .card-nopd-out-container {
    .card-out-container;
    padding: 0px !important;
  }
}

.same-tag {
  display: inline-block;
  height: 40px;
  width: 40px;
  line-height: 40px;
  text-align: center;
  color: @lighterColor;

  &:hover {
    cursor: pointer;
  }
}

.tags-menu-container {
  width: 150px !important;
}

.tags-view-container {
  .home-icon {
    .same-tag;
    border-right: 1px solid @dividerColor;

    &.active {
      color: @brandColor;
      background-color: @tagsBg;
    }
  }

  .ant-tabs-card {
    .ant-tabs-nav {
      .ant-tabs-tab {
        border-top: none !important;
        border-bottom: none !important;
        background: @white !important;
        color: @lighterColor;

        // margin-left: 0!important;
        &:hover {
          color: @brandColor !important;
          background: @tagsBg !important;

          .ant-tabs-tab-remove {
            color: @brandColor !important;
          }
        }

        &.ant-tabs-tab-active {
          background: @tagsBg !important;

          .ant-tabs-tab-btn {
            color: @brandColor !important;
          }

          .ant-tabs-tab-remove {
            color: @brandColor !important;
          }
        }
      }
    }
  }

  .ant-dropdown-link {
    .same-tag;
    border-left: 1px solid @dividerColor;
    // text-align: center;
    // &:hover {
    //   cursor: pointer;
    // }
  }
}

.list-operate {
  margin: 24px 0 15px 0;
  border-top: 1px solid @dividerColor;
  padding-top: 20px;

  .ant-btn {
    margin-right: 10px;
    height: 28px;
    line-height: 1;
  }
}

.list-operate2 {
  margin: 20px 0 15px 0;

  .ant-select-selector {
    min-width: 120px;
  }
}

.table-operate-container {
  .ant-btn {
    padding: 0 !important;
  }
}

.warning-link {
  color: @warningColor;

  &:hover {
    color: fade(@warningColor, 80%);
  }
}
.font-normal {
  font-weight: normal;
}
// .primary-link {
//   color: @primaryColor;
//   .hover-pointer;
// }
.primary-operate-tag {
  color: @primaryColor;
  .hover-pointer;
}



.header-notice-container {
  width: 400px;

  .ant-col {
    min-height: 40px;
    width: 100%;
    padding: 0 10px;
    display: flex;
    align-items: center;
  }

  .header-row {
    background-color: #F6F6F7;
    font-weight: bolder;
    border-radius: 4px 4px 0px 0px;
    border: 1px solid @border-color-base;
  }

  .notice-content-container {
    border-bottom: 1px solid @border-color-base;
    padding: 10px 0;

    .ant-col-20 {
      padding-right: 10px;

      >div {
        &:first-child {
          font-size: 24px;
          margin-right: 11px;

          &.warning {
            color: @tipColor;
          }

          &.error {
            color: @warningColor;
          }
        }

        &:last-child {
          p {
            margin-bottom: 2px;
            word-break: break-all;
            overflow: hidden;
            text-overflow: ellipsis;
            display: -webkit-box;
            -webkit-box-orient: vertical;
            -webkit-line-clamp: 2;
          }

          div {
            font-size: 12px;
            color: @lighterColor;
          }
        }
      }
    }

    .ant-col-4 {
      padding-left: 10px;
    }
  }

  .no-notice {
    height: 80px;
    line-height: 80px;
    text-align: center;
  }

  .all-notice {
    padding-top: 10px;
    text-align: center;
    color: @lighterColor;
    .hover-pointer;
  }
}

.lock-tip {
  .ant-message-notice-content {
    border: 1px solid @tipColor !important;
    background: #FFF4E5;
    box-shadow: none;
  }
}

.lock-modal-content {
  header {
    .ant-modal-header;
    .border-radius;
    display: flex;
    justify-content: space-between;

    >div {
      &:first-child {
        font-weight: bold;
      }

      &:last-child {
        .hover-pointer;
      }
    }
  }

  .warning-tip {
    display: flex;
    align-items: center;
    color: @deepColor;

    .warning-tip-icon {
      font-size: 18px;
      color: @tipColor;
      .mr-10;
    }
  }
}

.side-menu-icon {
  &::before {
    color: @brandColor;
  }
}

.trans90 {
  transform: rotate(90deg);
}
.bookmarks-content-container {
  margin: -12px -16px;
  padding: 10px 0;
  >section {
    height: 30px;
    padding: 0 10px;
    display: flex;
    align-items: center;
    color: #666666;
    &:hover { 
      cursor: pointer;
      background: #F5F5F5;
      .opt-del-icon { 
        visibility: visible;
      }
    }
    .opt-del-icon { 
      visibility: hidden;
    }
    >div {
      &:first-child {
        flex: 1;
        padding-right: 15px;  
        font-size: 14px;
        span {
          .iconfont; 
          .ft-size16;
          .mr-5;
          position: relative;
          top: 1px;
        }
      }
      &:last-child {
        flex: none; 
      }
    }
  }
}
.side-menu-collect {
  float: right;
}